// import { studentsModel } from "../../../db/model/students.js";
import {
    require
} from "../util/require.js";

export default {
    // 登录
    async login({
        username,
        password
    } = {}) {
       const data= await require({
            type: "GET",
            url: "/api/users/login",
            data: {
                username,
                password
            }
        })
        
       this.setToken(data.token);
  
        return data
    },

    setToken: (value) => sessionStorage.setItem("tk", JSON.stringify(value)),
    getToken: () => JSON.parse(sessionStorage.getItem("tk")),
    // 注册
    async reg({
        username,
        password
    } = {}) {
        return require({
            type: "post",
            data: {
                username,
                password
            },
            url: "/api/users/reg"
        })
    },
    // 注册时验证用户名
    async verifyUsername({
        username,
    } = {}) {
        return require({
            type: "post",
            data: {
                username,
            },
            url: "/api/users/reg"
        })
    },
    // 学生搜索用
    // async studentsSeek({
    //     username,
    // } = {}) {
    //     return require({
    //         type: "get",
    //         data: {
    //             username
    //         },
    //         url: "/student"
    //     })
    // },
    // //  所有的学生数据
    //     async layuilist({ toolbar, toolbarhead }) {
    //         return await layui.table.render({
    //             elem: '#stutable'
    //             , height: 526
    //             , method: "get"
    //             , url: '/api/student'
    //             , page: true
    //             , cols: [[
    //                 { type: 'numbers', title: '全选', fixed: 'left' }
    //                 , { type: 'checkbox', fixed: 'left' }
    //                 , { field: 'name', title: '姓名', width: 80 }
    //                 , { field: 'age', title: '年龄', width: 80, sort: true }
    //                 , { field: 'sex', title: '性别', width: 80, sort: true }
    //                 , { field: 'classId', title: '班级', width: 80, sort: true }
    //                 , { field: 'tel', title: '电话', width: 150 }
    //                 , { field: 'email', title: '邮箱' }
    //                 , { field: 'city', title: '家庭地址' }
    //                 , {
    //                     fixed: 'right', field: 'tool', title: '操作', width: 120, toolbar: toolbar
    //                 }
    //             ]]
    //             , toolbar: toolbarhead
    //         });
    //     },

    //     // layui自带重载表格方法(查询)
    //     async select(data) {
    //             await layui.table.reload("stutable", {
    //                 url: "/api/student/sel",
    //                 where:data,
    //                 page: { curr: 1 }
    //             });

    //     },


    //     async students() {
    //         return require({
    //             type: "get",
    //             url: "/api/student"
    //         })
    //     },
    //     async newStudents({
    //         username,
    //         sex,
    //         id,
    //         age,
    //     }) {
    //         return require({
    //             type: "get",
    //             url: "/student",
    //             data: {
    //                 username,
    //                 sex,
    //                 id,
    //                 age,
    //             },

    //         })


    //     },
    //     test: function (cb) {
    //         let arr;
    //         new Promise(resolve => {
    //             $.ajax({
    //                 type: "GET",
    //                 url: "/test/1",
    //                 success: function (data) {
    //                     console.log(data);
    //                     arr = data
    //                     resolve()
    //                 }
    //             })

    //         }).then(data => {
    //             new Promise(resolve => {
    //                 $.ajax({
    //                     type: "GET",
    //                     url: "/test/2",
    //                     success: function (data) {
    //                         arr = [...arr, ...data]
    //                         resolve()
    //                     }
    //                 })

    //             })
    //         }).then(data => {
    //             new Promise(resolve => {
    //                 $.ajax({
    //                     type: "GET",
    //                     url: "/test/3",
    //                     success: function (data) {
    //                         arr = [...arr, ...data]
    //                         resolve()
    //                     }
    //                 })

    //             })
    //         }).then(data => {
    //             new Promise(resolve => {
    //                 $.ajax({
    //                     type: "GET",
    //                     url: "/test/4",
    //                     success: function (data) {
    //                         arr = [...arr, ...data]
    //                         cb(arr)
    //                     }
    //                 })

    //             })
    //         })
    //     },

    //     asyncFn: async function asyncFn() {
    //         const a = await new Promise(resolve => {
    //             $.ajax({
    //                 type: "GET",
    //                 url: "/test/1",
    //                 success: resolve
    //             })

    //         })
    //         const b = await new Promise(resolve => {
    //             $.ajax({
    //                 type: "GET",
    //                 url: "/test/2",
    //                 success: resolve
    //             })

    //         })
    //         const c = await new Promise(resolve => {
    //             $.ajax({
    //                 type: "GET",
    //                 url: "/test/3",
    //                 success: resolve
    //             })

    //         })
    //         const d = await new Promise(resolve => {
    //             $.ajax({
    //                 type: "GET",
    //                 url: "/test/4",
    //                 success: resolve
    //             })

    //         })
    //         return [...a, ...b, ...c, ...d]
    //     }


};